package shanghaielectric_lib.Utils.dwin;

/**
 * Created by 45000460 on 2017/11/27.
 */

public class BitUtils {
    //将 整数 num 的第 i 位的值 置为 1,起始位置从0开始
    public static int setBit_1(int num, int i)
    {
        return (num | (1 << i));
    }

    //将 整数 num 的第 i 位的值 置为 0
    public static int setBit_0(int num, int i)
    {
        int mask = ~(1 << i);//000100
        return (num & (mask));//111011
    }

    //获取 整数 num 的第 i 位的值
    public static boolean getBit(int num, int i)
    {
        return ((num & (1 << i)) != 0);//true 表示第i位为1,否则为0
    }

    //获取 整数 num 的第 i 位的值
    public static int getBit_int(int num, int i)
    {
        return ((num & (1 << i)) != 0)==true?1:0;//true 表示第i位为1,否则为0
    }
}
